Numerical methods are commonly employed to address a diverse range of practical problems involving partial differential equations (PDE's) subject to prescribed boundary conditions. Such methods are particularly useful when analytical solutions prove to be elusive, intractable, or impractical, as are many problems in heat transfer, fluid dynamics, electric potential distributions, chemical distributions, elastic deformations, and others. The most prominent of such numerical methods are the so-called ‘finite differences’ (FD) methods, ‘finite elements’ (FE) methods, and ‘boundary elements’ (BE) methods. Each of these approaches, including their various modifications and refinements, have relative strengths and weaknesses. The oldest of these techniques, the FD methods, are particularly attractive because of their algorithmic simplicity, ease of implementation, and computational speed, relative to the alternative methods.
In FD methods, the continuous domain in space over which a function f(x,y,z) is defined is replaced by a ‘grid’ (or ‘lattice’ or ‘mesh’) of discrete points, conveniently arranged, and separated by finite distances. This is referred to as a ‘discretization’ of the problem. The function f(x,y,z) is expanded as a Taylor series in the neighborhood of each particular grid point, expressed in terms of the values of f(x,y,z) at neighboring grid points and their distances from the particular grid point, and the partial differentials ate then replaced by differences involving the value of f(x,y,z) at the grid point as well as values of f(x,y,z) at neighboring grid points. Typically, the series at each grid point is truncated after the first terms, involving only the nearest neighbor grid points. Hence, the problem reduces to one of solving a system of simple difference equations. The system of equations are typically processed iteratively until the results from one iteration differ by less than some specified amount from the previous iteration. At this point, the solution function f(x,y,z) is approximated by the final resulting values for f(x,y,z) at the grid points.
One of the principle shortcomings of such FD methods is that the boundary conditions of a problem often correspond to slanted or curved surfaces, and such surfaces can typically be represented only approximately in a regular, orthogonal away of grid points. That is, the discretization of slanted or curved boundary surfaces of a problem involves approximating such surfaces by grid points that are close to, but are rarely, if ever, coincident with such surfaces. Consequently, slanted or curved smooth surfaces are represented by surfaces with discrete steps corresponding to the discrete separation between grid points, resulting in discretized boundary surfaces exhibiting the well-known “staircase effect”. Generally, however, the values assigned to the ‘boundary grid points’ of the discretized surfaces are just the values of the original smooth boundary surface proximal to the boundary grid points. Such approximations of the boundary conditions lead to inaccuracies in the final solution of f(x,y,z) at grid points throughout the domain. This is one reason that FD methods have acquired a reputation as being generally less accurate than the other methods.
Nevertheless, there have been a number of schemes devised to reduce the impact of the discretization of the boundaries in FD methods. However, such efforts have universally resulted in concommitant compromises of one or more of the relative advantages of FD methods. For example, perhaps the most straightforward approach has been to increase the grid density, that is, to reduce the separations between grid points. While this approach does reduce errors, it is accompanied by increased computer processing time and memory requirements, and therefore cost. Further, this approach is ultimately constrained by the computer memory capacity that is available, which is never unlimited, or by constraints on array sizes that may be imposed by a particular FD computer program and/or computer operating system.
Other schemes are based on utilizing curvilinear coordinate systems, which may be configured to accommodate slanted or curved boundaries of at least some problems. Similarly, other schemes involve geometrically conforming grids, such as tetrahedral or triagonal meshes, which may be configured to represent the slanted or curved boundary surfaces more accurately than an orthogonal grid. However, all of these approaches involve a concommitant increase in algorithmic complexity, which compromises the relative simplicity and ease of implementation of the FD methods.
Even more sophisticated schemes have been devised to more accurately represent slanted or curved boundaries, such as: the incorporation of approximating functions at such boundaries; extending the Taylor series expansions of the function at grid points near the boundaries to higher order terms; schemes involving so-called ‘variational homogenization’; and, defining a set of local approximating functions and a ‘grid stencil’ with the so-called ‘FLAME’ schemes. All of these approaches have involved a compromise in simplicity, ease of implementation, and/or computational speed of the FD methods.
In summary, there has not been provided by the prior art any approach to FD methods for solving systems of partial differential equations having specified boundary conditions, that have improved accuracy as a result of moore accurate representation of slanted or curved boundaries, without sacrificing any of the advantages offered by FD methods of simplicity, ease of implementation, and/or computational complexity, speed, and, ultimately, computational cost.